package com.funsport.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.time.LocalDateTime;

/**
 * 积分兑换订单实体类
 */
@Data
@TableName("point_orders")
public class PointOrder {
    
    @TableId(type = IdType.AUTO)
    private Long id;
    
    /**
     * 订单编号
     */
    private String orderNo;
    
    /**
     * 用户ID
     */
    private Long userId;
    
    /**
     * 商品ID
     */
    private Long productId;
    
    /**
     * 商品名称（快照）
     */
    private String productName;
    
    /**
     * 商品图片（快照）
     */
    private String productImage;
    
    /**
     * 消耗积分
     */
    private Integer pointsCost;
    
    /**
     * 兑换数量
     */
    private Integer quantity;
    
    /**
     * 收货人姓名
     */
    private String receiverName;
    
    /**
     * 收货人电话
     */
    private String receiverPhone;
    
    /**
     * 收货地址
     */
    private String receiverAddress;
    
    /**
     * 订单状态：pending-待处理, processing-处理中, shipped-已发货, completed-已完成, cancelled-已取消
     */
    private String status;
    
    /**
     * 物流单号
     */
    private String shippingNo;
    
    /**
     * 备注
     */
    private String notes;
    
    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createdAt;
    
    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updatedAt;
    
    /**
     * 发货时间
     */
    private LocalDateTime shippedAt;
    
    /**
     * 完成时间
     */
    private LocalDateTime completedAt;
}

